/*****************************************************************
*
*	Netcare Agent Project
*		Copyright(C) 2010, Wicresoft EKA. All Rights Reserved.
*
*	Authors:
*		Miles Chen (milesch@wicresoft.com)
*		TingRong Shi (trshi@wicresoft.com)
*
*	Part of the product code depends on gSOAP under GPL license
*		Copyright(C) 2000-2010, Robert van Engelen, Genivia Inc. All Rights Reserved.
*
*****************************************************************/
#pragma once
#include <vector>
#include <string>

#include "ns.h"

NETCARE_AGENT;

USING_STD;

class CProcess /*sealed*/
{
public:
	CProcess(unsigned int pid);
	~CProcess(void);

	static vector<CProcess*>* GetProcesses();

	bool Kill() const;

	unsigned int ProcessId;
#ifdef WIN32
	wstring ImageName;
	wstring FullPath;
#else
	// Linux doesn't use unicode string
	string ImageName;
	string FullPath;
#endif
	long NonpagedSystemMemorySize64;
	long PagedMemorySize64;
	long PeakPagedMemorySize64;
	long PeakVirtualMemorySize64;
	long PrivateMemorySize64;
};

ENDNS ENDNS